13 - HPC Cafe: Git: introduction, workflows, hints and tricks [ID:29692]
50 von 1115 angezeigt

Today, the topic will be about Git and about version control systems in general.

I have the slides already put online because in the slides I present there are no reference

slides.

So I will not list all the commands that are available with Git.

If you know Git, there are a lot of different options and things you can do.

And those reference slides are included in the slide set that you can download at this

URL.

So they are down in the list.

Whether it's for today's date, you can already download the slides.

Some other remark, it's only important for the reference slides.

Starting with version 2.23, Git really consolidated and cleaned up their interface.

And some commands are only valid for Git newer than 2.23.

And 2.23 is quite recent, just to give you an idea, on CSHPC, the standard Git that's

in the path is 1.17.

And on EMI, it's, I think, 2.2 or something.

So just that you are aware of that.

Okay, so let's start.

So the first question that arises is, well, what is this good for?

Why do I need a version control system?

And well, the reason is that software development is inherently hard.

So you have to keep control about a lot of things.

And it's messy for a lot of people.

They experience this as a very insecure and hazardous undertaking.

And one aspect of software engineering, that's the art or the craft to write software in

a professional way, is software configuration management, and software configuration management,

again, consists of several different things.

And one of them is what is called, I have this from Wikipedia, of course, identification,

control status, and auditing of configuration.

And this is the topic of today.

So version control systems, of course, there are a lot of other aspects.

Maybe we talk about this in another HPC Cafe talk.

And today will be about version control systems.

So what are the benefits?

So why should you do that?

And again, this is a list.

I will break this down.

So first is change management.

You want to know who changed what when.

This is especially important if several people collaborate or develop together on a single

software project, or when the development team is spread out, they are not in a single

place.

Then you want to archive all states.

You want to have access to all previous versions and want to be able to look at previous versions.

This is especially important for tracking if something went wrong.

You want to be able to track where this came from and what did you change when.

Then reconstruction of previous file states.

If you mess something up, you want to be able to go back to an old, safe, and state with

some guaranteed properties.

Next, coordination of access of multiple persons.

When a lot of people develop on the same project, you need some kind of synchronization and

Teil einer Videoserie :
Teil eines Kapitels:
HPC Café

Zugänglich über

Offener Zugang

Dauer

01:22:11 Min

Aufnahmedatum

2021-02-09

Hochgeladen am

2021-02-10 15:58:40

Sprache

en-US

Tags

HPC rrze Security clusters tmux LIKWID Pin pychachesim
Einbetten
Wordpress FAU Plugin
iFrame
Teilen